﻿using SMARTHOTEL.RoomTypes;
using System.Collections.Generic;
using System.Threading.Tasks;
using Volo.Abp.Application.Services;
namespace SMARTHOTEL.Products
{
    public interface IProductService: IApplicationService
    {
        Task<ResultDto<bool>> CreateAllAsync(CreateUpdateSortDto dto);
        Task<ResultDto<List<SortDto>>> GetAllAsync();
         Task<ResultDto<bool>> CreateProductLabelAsync(CreateUpdateProductLabelDto dto);
        Task<ResultDto<List<GetProductLabelDto>>> GetProductLabel();
        Task<ResultDto<bool>> CreateAllProduct(CreateProductDto dto);
        Task<ResultDto<List<GetProductDto>>> GetAllProduct(string? productname, int commoditystatus);
        Task<ResultDto<bool>> UpdateAllProductAsync(UpdateProductDto dto);
        Task<ResultDto<bool>> DeleteAllProductAsync(string id);
        Task<ResultDto<bool>> UpdateProductStatuesAsync(string id);
        Task<ResultDto<bool>> CreateAllReservation(CreateUpdateReservationDto dto);
        Task<ResultDto<List<GetReservationDto>>> GetAllReservation(string? productname, int commoditystatus);
        Task<ResultDto<bool>> DeleteAllReservationAsync(string id);
        Task<ResultDto<bool>> UpdateReservationStatuesAsync(string id);

    }
}
